CFLAGS := -g -O0 -Wall

log:=thirdparty/log/log.c thirdparty/log/log.h
log_test: test/log_test.c $(log)
	-gcc $^ -o $@ -Ithirdparty
	-./$@
	-rm $@

json:=thirdparty/cJSON/cJSON.c thirdparty/cJSON/cJSON.h
json_test: test/json_test.c $(json) $(log)
	-gcc $(CFLAGS) $^ -o $@ -Ithirdparty

app_common:=app/app_common.c app/app_common.h
app_common_test: test/app_common_test.c $(app_common) $(log)
	-gcc $^ -o $@ -Ithirdparty -Iapp
	-./$@
	-rm $@

app_message:=app/app_message.c app/app_message.h
app_message_test: test/app_message_test.c $(app_message) $(app_common) $(log) $(json)
	-gcc $^ -o $@ -Ithirdparty -Iapp
	-./$@
	-rm $@

mqtt_test: test/mqtt_test.c
	-$(CC) $^ -o $@ -lpaho-mqtt3c
	-./$@
	-rm $@  

app_mqtt:=app/app_mqtt.c app/app_mqtt.h
app_mqtt_test: test/app_mqtt_test.c $(app_mqtt) $(log)
	-gcc $^ -o $@ -Ithirdparty -Iapp -lpaho-mqtt3c
	-./$@
	-rm $@


app_pool:=app/app_pool.c app/app_pool.h
app_pool_test: test/app_pool_test.c $(app_pool) $(log)
	-gcc $(CFLAGS) $^ -o $@ -Ithirdparty -Iapp
	-./$@
	-rm $@

app_buffer:=app/app_buffer.c app/app_buffer.h
app_buffer_test: test/app_buffer_test.c $(app_buffer) $(log)
	-gcc $^ -o $@ -Ithirdparty -Iapp
	-./$@
	-rm $@

app_device:=app/app_device.c app/app_device.h
app_bt:=app/app_bt.c app/app_bt.h
app_device_test: test/app_device_test.c $(app_bt) $(app_device) $(log) $(app_buffer) $(app_message) $(app_common) $(json) $(app_pool) $(app_mqtt) 
	-$(CC) -o $@ $^ -Ithirdparty -Iapp -lpaho-mqtt3c
	-./$@
	-rm $@

# -I 指定include path查找的目录
# $^ 表示所有依赖文件
# $@ 表示目标名
# -l 指定使用的下载的第三方库